###############################################################
# Clase Headers
# Contiene todos los headers de una conection
###############################################################

class Headers

	
	def initialize(list)
		@list = Array.new
		list.each{ |i|
			if i.strip.size != 0
				@list << i.strip
			end
		}
	end
	
	#------------------------------------------------------
	# atributos reader y writer para los datos de instancia
	#------------------------------------------------------
	attr_reader :list

	#------------------------------------------------------
	# imprime en pantalla todos los headers
	#------------------------------------------------------
	def print()
		@list.each{ |i| puts ".#{i}.\n\n" }
	end
	
	#------------------------------------------------------
	# revisa toda la lista y retorna si algún header es el 
	# solicitado
	#------------------------------------------------------
	def contain(header)
		@list.each{ |i|
			if i.include?("#{header}:")
				return true
			end
		}
		return false
	end
	
	#------------------------------------------------------
	# revisa en toda la lista por el header y lo retorna
	# si no lo encuentra, retorna nil
	#------------------------------------------------------
	def get(header)
		@list.each{ |i|
			if i.include?("#{header}:")
				return i.split(":",2)[1].strip
			end
		}
		return nil
	end
	
end
